﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using QLVatTu.Class;

namespace QLVatTu.DanhMuc
{
    public partial class frmNhomVatTu : Form
    {
        public frmNhomVatTu()
        {
            InitializeComponent();
        }

        KetNoiDB cn = new KetNoiDB();
        string tag = "";

        private void load_button(string tag)
        {
            if (tag == "them")
            {
                btnThem.Enabled = false;
                btnSua.Enabled = false;
                btnXoa.Enabled = false;

                btnLuu.Enabled = true;
                btnHuy.Enabled = true;

                txtMaNhom.Enabled = false;
                txtTenNhom.Text = "";
                txtTenNhom.Enabled = true;
                txtGhiChu.Enabled = true;

            }
            else if (tag == "sua")
            {
                btnThem.Enabled = false;
                btnSua.Enabled = false;
                btnXoa.Enabled = false;

                btnLuu.Enabled = true;
                btnHuy.Enabled = true;

                txtMaNhom.Enabled = false;
                txtTenNhom.Enabled = true;
                txtGhiChu.Enabled = true;
            }
            else
            {
                btnThem.Enabled = true;
                btnSua.Enabled = true;
                btnXoa.Enabled = true;

                btnLuu.Enabled = false;
                btnHuy.Enabled = false;
                txtMaNhom.Enabled = false;
                txtTenNhom.Enabled = false;
                txtGhiChu.Enabled = false;

            }
        }

        private void load_grid()
        {
            if(cn.KetNoi())
            {
                DataTable tbl=cn.getTable("select row_number() over(order by MaNhomVatTu) as STT,* from tbl_NhomVatTu");
                dgvNhomVatTu.DataSource=tbl;
            }
        }

        private void frmNhomVatTu_Load(object sender, EventArgs e)
        {
            
            load_button(tag);

            load_grid();
        }

        private void btnThem_Click(object sender, EventArgs e)
        {
            tag = "them";
            load_button(tag);
            txtMaNhom.Text = cn.SinhMa("MaNhomVatTu","tbl_NhomVatTu","NH");
        }

        private void btnSua_Click(object sender, EventArgs e)
        {
            tag = "sua";
            load_button(tag);
        }

        private void btnHuy_Click(object sender, EventArgs e)
        {
            tag = "";
            load_button(tag);
        }

        private void btnThoat_Click(object sender, EventArgs e)
        {
            if (this.TopLevel == false) this.Parent.Parent.Controls.Remove(this.Parent);
            else this.Close();
        }

        private void btnXoa_Click(object sender, EventArgs e)
        {
            if (dgvNhomVatTu.RowCount == 0) return;
            DialogResult msg = MessageBox.Show("Bạn có chắc chắn muốn xóa?", "Thông Báo", MessageBoxButtons.YesNo, MessageBoxIcon.Question);
            if (msg == DialogResult.Yes)
            {

                cn.KetNoi();
                cn.Delete_Table("tbl_NhomVatTu", "MaNhomVatTu = '" + txtMaNhom.Text + "'");
                //MessageBox.Show("Xóa dữ liệu thành công", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                load_button("");
                load_grid();
            }
        }

        private void btnLuu_Click(object sender, EventArgs e)
        {
            try
            {
                if (tag == "them")
                {
                    if (txtTenNhom.Text.ToString().Trim() == "")
                    {
                        MessageBox.Show("Chưa nhập tên nhóm vật tư", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        txtTenNhom.Focus();
                        return;
                    }
                        cn.KetNoi();
                        string TenNhomVatTu = cn.LayDuLieu("select TenNhomVatTu from tbl_NhomVatTu where lower(TenNhomVatTu) = N'" + txtTenNhom.Text.ToLower() + "'");
                        if (TenNhomVatTu != "")
                        {
                            MessageBox.Show("Tên nhóm vặt tư đã tồn tại.", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Error);
                            txtTenNhom.Focus();
                            return;

                        }
                        cn.Insert_Table("tbl_NhomVatTu", " MaNhomVatTu, TenNhomVatTu, GhiChu", "'" + txtMaNhom.Text +
                            "',N'" + txtTenNhom.Text + "',N'" + txtGhiChu.Text + "'");
                        //MessageBox.Show("Thêm mới thành công", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    }
                else
                {
                    cn.KetNoi();
                    cn.Update_Table("tbl_NhomVatTu", "TenNhomVatTu = N'" + txtTenNhom.Text.ToString().Trim() +
                                    "', GhiChu=N'"+txtGhiChu.Text+"'", "MaNhomVatTu = '" + txtMaNhom.Text + "'");
                    //MessageBox.Show("Sửa dữ liệu thành công.", "Thông Báo", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    
                }
                load_grid();
                load_button("");
            }
            catch
            {

            }
        }

        private void dgvNhomVatTu_SelectionChanged(object sender, EventArgs e)
        {
            if (dgvNhomVatTu.SelectedRows.Count > 0)
            {
                txtMaNhom.Text = dgvNhomVatTu.CurrentRow.Cells["MaNhomVatTu"].Value.ToString();
                txtTenNhom.Text = dgvNhomVatTu.CurrentRow.Cells["TenNhomVatTu"].Value.ToString();
                txtGhiChu.Text = dgvNhomVatTu.CurrentRow.Cells["GhiChu"].Value.ToString();
            }
        }
    }
}
